home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Original Shareware 1.1
/
The Original Shareware (WeMake CDs)(Volume 1.1)(CDs, Inc)(1993).iso
/
23
/
speedtpc.zip
/
SPEED.ASM
next >
Wrap
Assembly Source File
|
1987-08-16
|
2KB
|
51 lines
TITLE SPEED UTILITY
.RADIX 16
CODSG SEGMENT
ASSUME DS:CODSG, SS:CODSG ,CS:CODSG ,ES:CODSG
ORG 081H
PARMS DB ?
ORG 100H
START:
JMP BEGIN
MFAST DB 'Now running in FAST mode$'
MSLOW DB 'Now running in SLOW mode$'
BEGIN:
CLD
MOV SI,OFFSET PARMS
LOOP1:
LODSB ;get character from parms
CMP AL,20 ;if its a blank
JE LOOP1 ;go back and get another
AND AL,0DF ;not blank - force to upper case
CMP AL,'F' ; test for FAST
JE FAST ; yes
CMP AL,'S' ; test for SLOW
JE SLOW ; yes
ASK: ; otherwise just inquire
IN AL,61 ; look at port
TEST AL,4 ; and test the bit
JZ SAYSLOW ; if off, slow mode
SAYFAST:
MOV DX,OFFSET MFAST
MOV AH,9
INT 21H
INT 20H ;terminate program
SAYSLOW:
MOV DX,OFFSET MSLOW
MOV AH,9
INT 21H
INT 20H ;terminate program
FAST: IN AL,61 ;get port value
AND AL,0FBH ;mask off turbo bit
OUT 61,AL ;make slow
IN AL,61 ;get port value
XOR AL,0C ;flip turbo bit
OUT 61,AL ;make fast
JMP ASK ;go to routine to display speed
SLOW: IN AL,61 ;get port value
AND AL,0FBH ;mask off turbo bit
OUT 61,AL ;make slow
JMP ASK ;go to routine to display speed
CODSG ENDS
END START